<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hrc
  PUBLIC "-//Cail Lomecb//DTD Colorer HRC take5//EN" "http://colorer.sf.net/2003/hrc.dtd">
<hrc xmlns="http://colorer.sf.net/2003/hrc" xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     version="take5"
     xsi:schemaLocation="http://colorer.sf.net/2003/hrc http://colorer.sf.net/2003/hrc.xsd">
<!--
  insert this define into HRC base catalog file (colorer.hrc)

  <prototype name="bkt" group="group" description="bkt" targetNamespace="colorer://namespace.xml/2004/bracket">
    <location link="bkt.hrc"/>
    <filename>/\./ix</filename>
  </prototype>
--><type name="bkt">
      <annotation>
         <documentation>
           XSLT Generated HRC scheme for language 'bkt'
           from XML Schema with xsd2hrc.xsl version 0.9.4 
            Copyright (C) 2002-04 Cail Lomecb
            Portions copyright (C) 2004-06 Eugene Efremov

           Scheme parameters:
             targetNamespace             : colorer://namespace.xml/2004/bracket
             hrctype                     : bkt
             allow-common-attr           : yes
             allow-any-attr              : no
             allow-unknown-elements      : no
             allow-unknown-root-elements : no
             force-single-root           : yes
             default prefixes            : (?{}(?{}bkt)(?{}:))?
               you can change them with entity 'nsprefix'
             
             </documentation>
         <documentation>
          Schema documentation:</documentation>
         <contributors><![CDATA[Eugene Efremov]]></contributors>
      </annotation>
      <import type="def"/>
      <region name="element.start.name" parent="xml:element.defined.start.name"/>
      <region name="element.end.name" parent="xml:element.defined.end.name"/>
      <region name="element.start.lt" parent="xml:element.start.lt"/>
      <region name="element.start.gt" parent="xml:element.start.gt"/>
      <region name="element.end.lt" parent="xml:element.end.lt"/>
      <region name="element.end.gt" parent="xml:element.end.gt"/>
      <region name="element.nsprefix" parent="xml:element.defined.nsprefix"/>
      <region name="element.nscolon" parent="xml:element.nscolon"/>
      <region name="Attribute.name" parent="xml:Attribute.defined.name"/>
      <region name="Attribute.nsprefix" parent="xml:Attribute.defined.nsprefix"/>
      <region name="Attribute.nscolon" parent="xml:Attribute.nscolon"/>
      <region name="AttValue" parent="xml:AttValue.defined"/>
      <region name="AttValue.start" parent="xml:AttValue.defined.start"/>
      <region name="AttValue.end" parent="xml:AttValue.defined.end"/>
      <region name="Enumeration" parent="xml:Enumeration"
              description="Enumerated type values"/>
      <region name="blockOutlined" description="block" parent="def:Outlined"/>
      <region name="name-blockOutlined" description="named block" parent="def:Outlined"/>
      <entity name="ns-real-prefix" value="(?{}(?{}bkt)(?{}:))"/>
      <entity name="nsprefix" value="(?{}(?{}bkt)(?{}:))?"/>
      <entity name="attr-nsprefix" value="(?{}(?{}bkt)(?{Attribute.nscolon}:))"/>
      <scheme name="_hrc_int_elementContent">
         <block start="/~( (&lt;) (  ((%xml:NCName;) (:) )? (%xml:Name;) ) \M &gt;?   )/x"
                end="/( (&lt;\/) (\y3\b)?= ( (%xml:NCName;) (:) )? (%xml:Name;) \b \M \s* (&gt;?)                   | (\/ \M &gt;) )/x"
                region01="PairStart"
                region02="element.start.lt"
                region05="element.nsprefix"
                region06="element.nscolon"
                region07="element.start.name"
                region11="PairEnd"
                region12="element.end.lt"
                region15="element.nsprefix"
                region16="element.nscolon"
                region17="element.end.name"
                region18="element.end.gt"
                region19="element.start.gt"
                scheme="xml:elementContent2"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="_hrc_int_AttValue">
         <block start="/(&#34;)/" end="/(\y1)/" region00="PairStart" region10="PairEnd"
                region01="AttValue.start"
                region11="AttValue.end"
                scheme="xml:AttValue.content.quot"
                region="AttValue"/>
         <block start="/(')/" end="/(\y1)/" region00="PairStart" region10="PairEnd"
                region01="AttValue.start"
                region11="AttValue.end"
                scheme="xml:AttValue.content.apos"
                region="AttValue"/>
      </scheme>
      <scheme name="AttributeContent">
         <inherit scheme="xml:AttributeContent">
            <virtual scheme="xml:AttValue" subst-scheme="_hrc_int_AttValue"/>
         </inherit>
      </scheme>
      <!--custom schemes from '../../src/colorer/src/custom.colorer.xml'--><scheme name="re-string-content">
         <inherit scheme="hrc:RE-String"/>
      </scheme>
      <scheme name="re-string-content-error">
         <inherit scheme="re-string-content"/>
      </scheme>
      <!--end custom--><scheme name="blockattr-attributeGroup">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(name)\M([\s\=]|$)/x"
                scheme="xmlschema:string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(start)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name" start="/(\s?#1|^)(end)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region-start)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region-end)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region-middle)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme-middle)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
      </scheme>
      <scheme name="bracket-element">
         <block start="/\M &lt; (%nsprefix;bracket ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="_hrc_int_d12e30-elementContent"/>
      </scheme>
      <!-- 
  Simple scheme for support 'bracket' add-on for hrc
  Written by Eugene Efremov (4mirror@mail.ru)
 
-->
<scheme name="re-string-content-old">
         <inherit scheme="xmlschema:string-content"/>
      </scheme>
      <scheme name="re-string-content-error-old">
         <inherit scheme="re-string-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="re-string-content-cdsect">
         <inherit scheme="re-string-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="re-string-Attributes"/>
      <scheme name="re-string-AttributeContent">
         <inherit scheme="AttributeContent">
            <virtual scheme="xml:AttValue.content.stream" subst-scheme="re-string-content-error"/>
         </inherit>
      </scheme>
      <scheme name="re-string-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:CDSect.content.stream" subst-scheme="re-string-content-cdsect"/>
            <virtual scheme="xml:content.cdata.stream" subst-scheme="re-string-content-error"/>
            <virtual scheme="xml:element" subst-scheme="def:empty"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="re-string-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="QName-content">
         <inherit scheme="xmlschema:QName-content"/>
      </scheme>
      <scheme name="QName-content-error">
         <inherit scheme="QName-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="QName-content-cdsect">
         <inherit scheme="QName-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="QName-Attributes"/>
      <scheme name="QName-AttributeContent">
         <inherit scheme="AttributeContent">
            <virtual scheme="xml:AttValue.content.stream" subst-scheme="QName-content-error"/>
         </inherit>
      </scheme>
      <scheme name="QName-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:CDSect.content.stream" subst-scheme="QName-content-cdsect"/>
            <virtual scheme="xml:content.cdata.stream" subst-scheme="QName-content-error"/>
            <virtual scheme="xml:element" subst-scheme="def:empty"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="QName-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="blocktype-content">
         <regexp region="Enumeration" match="/query/"/>
         <regexp region="Enumeration" match="/biblock/"/>
         <regexp region="Enumeration" match="/halfblock/"/>
         <regexp region="Enumeration" match="/monoblock/"/>
         <regexp region="Enumeration" match="/singleblock/"/>
         <regexp region="Enumeration" match="/noblock/"/>
      </scheme>
      <scheme name="blocktype-content-error">
         <inherit scheme="blocktype-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="blocktype-content-cdsect">
         <inherit scheme="blocktype-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="blocktype-Attributes"/>
      <scheme name="blocktype-AttributeContent">
         <inherit scheme="AttributeContent">
            <virtual scheme="xml:AttValue.content.stream" subst-scheme="blocktype-content-error"/>
         </inherit>
      </scheme>
      <scheme name="blocktype-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:CDSect.content.stream" subst-scheme="blocktype-content-cdsect"/>
            <virtual scheme="xml:content.cdata.stream" subst-scheme="blocktype-content-error"/>
            <virtual scheme="xml:element" subst-scheme="def:empty"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="blocktype-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="yesno-content">
         <regexp region="Enumeration" match="/yes/"/>
         <regexp region="Enumeration" match="/no/"/>
      </scheme>
      <scheme name="yesno-content-error">
         <inherit scheme="yesno-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="yesno-content-cdsect">
         <inherit scheme="yesno-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="yesno-Attributes"/>
      <scheme name="yesno-AttributeContent">
         <inherit scheme="AttributeContent">
            <virtual scheme="xml:AttValue.content.stream" subst-scheme="yesno-content-error"/>
         </inherit>
      </scheme>
      <scheme name="yesno-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:CDSect.content.stream" subst-scheme="yesno-content-cdsect"/>
            <virtual scheme="xml:content.cdata.stream" subst-scheme="yesno-content-error"/>
            <virtual scheme="xml:element" subst-scheme="def:empty"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="yesno-Attributes"/>
         </inherit>
      </scheme>
      <!--
        parent: bracket
-->
<scheme name="_hrc_int_d12e30-content">
         <regexp match="/\M (&lt; %nsprefix;name-block \b\s*.*? (([\x22\x27])(.*?)(\3))? )([\/&gt;\s]|$)/x"
                 region1="name-blockOutlined"/>
         <block start="/\M &lt; (%nsprefix;name-block ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="name-block-elementContent"/>
         <regexp match="/\M (&lt; %nsprefix;block \b\s*.*? (([\x22\x27])(.*?)(\3))? )([\/&gt;\s]|$)/x"
                 region1="blockOutlined"/>
         <block start="/\M &lt; (%nsprefix;block ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="block-elementContent"/>
      </scheme>
      <scheme name="_hrc_int_d12e30-content-error">
         <inherit scheme="_hrc_int_d12e30-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="_hrc_int_d12e30-content-cdsect">
         <inherit scheme="_hrc_int_d12e30-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="_hrc_int_d12e30-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(type)\M([\s\=]|$)/x"
                scheme="xmlschema:string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme)\M([\s\=]|$)/x"
                scheme="xmlschema:string-AttributeContent"/>
      </scheme>
      <scheme name="_hrc_int_d12e30-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="_hrc_int_d12e30-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="_hrc_int_d12e30-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="block-content">
         <block start="/\M &lt; (%nsprefix;query ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="query-elementContent"/>
         <block start="/\M &lt; (%nsprefix;case ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="case-elementContent"/>
      </scheme>
      <scheme name="block-content-error">
         <inherit scheme="block-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="block-content-cdsect">
         <inherit scheme="block-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="block-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme1)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region1)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme2)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region2)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <inherit scheme="blockattr-attributeGroup"/>
      </scheme>
      <scheme name="block-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="block-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="block-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="name-block-content">
         <block start="/\M &lt; (%nsprefix;name ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="name-elementContent"/>
         <block start="/\M &lt; (%nsprefix;case ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
                scheme="case-elementContent"/>
      </scheme>
      <scheme name="name-block-content-error">
         <inherit scheme="name-block-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="name-block-content-cdsect">
         <inherit scheme="name-block-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="name-block-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <inherit scheme="blockattr-attributeGroup"/>
      </scheme>
      <scheme name="name-block-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="name-block-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="name-block-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="name-content"/>
      <scheme name="name-content-error">
         <inherit scheme="name-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="name-content-cdsect">
         <inherit scheme="name-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="name-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(match)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(region)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
      </scheme>
      <scheme name="name-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="name-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="name-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="case-content"/>
      <scheme name="case-content-error">
         <inherit scheme="case-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="case-content-cdsect">
         <inherit scheme="case-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="case-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(type)\M([\s\=]|$)/x"
                scheme="blocktype-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(start)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name" start="/(\s?#1|^)(end)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name" start="/(\s?#1|^)(all)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(scheme)\M([\s\=]|$)/x"
                scheme="QName-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(recursion1)\M([\s\=]|$)/x"
                scheme="yesno-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(recursion2)\M([\s\=]|$)/x"
                scheme="yesno-AttributeContent"/>
      </scheme>
      <scheme name="case-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="case-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="case-Attributes"/>
         </inherit>
      </scheme>
      <scheme name="query-content"/>
      <scheme name="query-content-error">
         <inherit scheme="query-content"/>
         <inherit scheme="xml:badChar"/>
      </scheme>
      <scheme name="query-content-cdsect">
         <inherit scheme="query-content-error">
            <virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
            <virtual scheme="xml:Reference" subst-scheme="def:empty"/>
         </inherit>
      </scheme>
      <scheme name="query-Attributes">
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(start1)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(end1)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(start2)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(end2)\M([\s\=]|$)/x"
                scheme="re-string-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(recursion1)\M([\s\=]|$)/x"
                scheme="yesno-AttributeContent"/>
         <block end="/[&#34;']?#1/" region02="Attribute.name"
                start="/(\s?#1|^)(recursion2)\M([\s\=]|$)/x"
                scheme="yesno-AttributeContent"/>
      </scheme>
      <scheme name="query-elementContent">
         <inherit scheme="_hrc_int_elementContent">
            <virtual scheme="xml:element" subst-scheme="query-content"/>
            <virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
            <virtual scheme="xml:Attribute.any" subst-scheme="query-Attributes"/>
         </inherit>
      </scheme>

      <scheme name="bkt-root">
         <annotation>
            <documentation>
               You can replace these elements with needed single root element
               with customizing HRC generation process.
              </documentation>
         </annotation>
         <inherit scheme="bracket-element"/>
      </scheme>
      <scheme name="bkt-root-addref">
         <inherit scheme="bkt-root"/>
      </scheme>
      <scheme name="bkt">
         <inherit scheme="xml:singleroot">
            <virtual scheme="xml:element" subst-scheme="bkt-root-addref"/>
         </inherit>
      </scheme>
   </type>
</hrc>